Producers of graphic content for display using a computer system want to create rich graphic contents which can be manipulated for different uses. Graphic contents may be represented as pixel data, possibly in layers, in the form of a bitmap image. Pixel data are collections of one or more pixels, which are samples of color and/or other information including transparency, thickness etc. An example of pixel data is a digital photograph, with a fixed resolution.
Many electronic graphics design applications allow a user to create pixel data with a pixel data manipulation tool, such as a brush, with one or more color attributes. One or more of the color attributes applied by the pixel data manipulation tool may be sampled from the color attributes of existing pixel data. Additionally or alternatively, the color attributes may be set using a displayed color attribute user interface device, such as a palette. After creation by a pixel data manipulation tool, attributes of pixel data may be modified, such as with a filter, smudge tool, blur tool, or any other suitable pixel data manipulation tool.
In a typical smudge tool of an electronic graphics design application, a stamp mask may be used to copy the current target surface into a pickup buffer, as a pickup step. As the smudge tool user device applicator is moved, the next stamp position is determined and the pickup buffer is copied onto the target surface at the new stamp position, as a transfer or ‘ghosting’ step. The current stamp mask is then used to copy back the resulting target surface into the pickup buffer, as a pickup step. This process may be repeated as the smudge tool is ‘drawn’ across the digital target surface to create a digital effect of moving a finger or brush across wet paint. In some cases, an initial injection of a user defined color may be applied at the first stamp position.